Auto Scailing Group 문제지
VPC - IP: 10.1.0.0/16, 이름: wsi-vpc
private A subnet - IP : 10.1.0.0/24, 이름: wsi-private-a, NAT 게이트웨이로 통신, 라우팅 테이블: wsi-private-a-rt
Private B subnet - IP : 10.1.1.0/24, 이름: wsi-private-b, NAT 게이트웨이로 통신, 라우팅 테이블: wsi-private-b-rt
Public A subnet - IP: 10.1.2.0/24, 이름: wsi-public-a, 인터넷 게이트웨이로 통신, 라우팅 테이블: wsi-public-rt
Public B subnet - IP: 10.1.3.0/24, 이름: wsi-public-b, 인터넷 게이트웨이로 통신, 라우팅 테이블: wsi-public-rt
S3 - 지급 받은 s3 파일에 있는 파일들을 모두 s3에 업로드, 이름: wsi-비번호-4자리 임의 영문-web-static
Bastion - EC2 type: t3.small, 이미지: Amazon Linux2, 권한: AWS PowerUser policy, 설치 패키지: awscli, jq, curl (루트랑 기본 사용자에 설치), 이름: wsi-bastion-ec2
웹 어플리케이션 - S3 이름: wsi-비번호-4자리 임의값-artifactory, S3 파일에 있는 app 코드를 사용합니다.
오토스케일링 - 오토스케일링그룹/EC2 이름: wsi-web-api-asg (생성된 EC2 이름도 같은 이름을 가짐), 이미지: Amazon Linux2, EC2 type: t3.small, 설치 패키지: jq, curl, 평균 CPU 사용량 30 이상시 스케일 업 되도록 구성, EC2 한대가 죽더라도 서비스가 동작 하도록 구성, 최대 6분 안에 인스턴스가 새로 생성 되거나 종료 되도록 구성
로드밸런서 - 인터넷 망에서 LB로 접근 가능하도록 구성, HTTP 80을 통해 접근 가능하도록 구성, 이름: wsi-web-api-alb, 헬스체크: /health
Cloud Front - CloudFront에 접근시 HTTPS를 통하여 접근 가능하도록 구성, S3와 ALB 두개의 origin을 가지도록 구성, 전 세계의 유저가 빠른 속도로 접근 가능하도록 구성, 이름: wsi-web-cdn
로그 - wsi-web-api-asg서버에서 남기는 app 로그가 CloudWatch Logs에 저장 되도록 구성, 로그그룹 이름: /aws/ec2/wsi, 로그 스트림 이름: api_EC2 ID
모니터링 - 대시보드 이름: WSI_API
HTTP ERROR 그래프 - 그래프 이름 : HTTP_ERROR, 서버의 5XX 응답값과 LB의 5XX 응답값에 대한 메트릭 포함, 에러의 개수를 집계함으로 값은 sum으로 계산되어 표기돼야 함
HTTP 요청 count 그래프 - 그래프 이름: HTTP_COUNT, LB로 유입 되는 HTTP 요청 개수에 대한 메트릭 포함, 요청 개수를 집계함으로 값은 sum으로 계산되어 표기돼야 함
HTTP 응답 시간 그래프 - 그래프 이름: RESPONSE_TIME, LB로 들어오는 HTTP 요청의 평균 응답 시간 메트릭 포함
Autoscaling EC2 CPU 그래프 - 그래프 이름: API_CPU, wsi-web-api-asg 인스턴스의 평균 CPU 사용량 메트릭 포함